package com.hanyizhu.demostore.mapper;

import com.hanyizhu.demostore.entity.Cart;
import com.hanyizhu.demostore.entity.Product;
import com.hanyizhu.demostore.vo.CartVO;

import java.util.Date;
import java.util.List;

/**
 * @author lenovo
 */
public interface CatrMapper {

    /**
     * 插入购物车数据
     * @param cart 购物车数据
     * @return 受影响的行数
     */
    Integer insert(Cart cart);

    /**
     * 更新购物车某件的数量
     * @param cid 购物车数据id
     * @param num 更新的数量
     * @param modifiedUser 修改者
     * @param modifiedTime 修改时间
     * @return 受影响的行数
     */
    Integer updateNumByCid(Integer cid, Integer num,
                           String modifiedUser,
                           Date modifiedTime);

    /**
     * 根据用户的id和商品的id来查询购物车中的数据
     * @param uid 用户id
     * @param pid 商品id
     * @return 购物车某个商品的数据
     */
    Cart findByUidAndPid(Integer uid,Integer pid);

    /**
     *
     * @param uid 用户id
     * @return 返回CartVo对象
     */
    List<CartVO> findByUid(Integer uid);

    Cart findByCid(Integer cid);

    List<CartVO> findVOByCid(Integer... uid);
}
